﻿using FluentNHibernate.Mapping;

namespace ControleRepresentante.Logic.Models.Maps
{
    public class TransportadoraMap : SubclassMap<Transportadora>
    {
        public TransportadoraMap()
        {
            Map(x => x.Nome)
                .Not.Nullable();
            HasMany(x => x.Pedidos)
                .Access.PascalCaseField(Prefix.mUnderscore)
                .Cascade.Delete()
                .Inverse();
            HasOne(x => x.TransportadoraJolitex)
                .Cascade.All();
        }
    }

    public class TransportadoraJolitexMap : MapBase<TransportadoraJolitex>
    {
        public TransportadoraJolitexMap()
        {
            Map(x => x.Codigo)
                .Nullable();
            HasOne(x => x.Transportadora);
        }
    }
}